// pages/form/form.js
const db = wx.cloud.database()
const app = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    index:0,
    title:'',
    url:''
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  radioChange(e) {
    this.setData({
      index:e.currentTarget.dataset.index
    })
  },

  title_input(e){
    this.setData({
      title:e.detail.value
    })
  },

  link_input(e){
    this.setData({
      url:e.detail.value
    })
  },

    // 添加外链
    add_link(){
      if(app.globalData.use == 0){
        wx.showModal({
          title:'提示',
          content:'当前生成外链次数已用完，请联系客服添加生成次数'
        })
        return;
      }
      let that = this
      if(this.data.title == ''){
        wx.showToast({
          title: '请输入标题',
          icon:'none'
        })
        return
      }
      if(this.data.url == ''){
        wx.showToast({
          title: '请输入外链链接',
          icon:'none'
        })
        return
      }
      wx.showLoading({
        title: '创建中',
      })
      db.collection('links').add({
        data:{
          title: this.data.title,
          link:'',
          url: this.data.url,
          type:this.data.index,
          view:0,
          time:this.get_time()
        }
      }).then(res => {
        if(res.errMsg == 'collection.add:ok'){
          console.log(res)
          let item = {
            _id:res._id,
            type:this.data.index
          }
          console.log(item)
          that.create_link(item)
        }
      })
    },

      // 生成外链
  create_link(item){
    let that = this
    wx.cloud.callFunction({
      name:'create',
      data:{
        item:item
      },
      success:function(res){
        wx.hideLoading()
        wx.showToast({
          title: '创建成功',
        })
        console.log(app.globalData.use-1)
        db.collection('user').where({
          _openid:app.globalData.openid
        }).update({
          data:{
            use:0
          }
        }).then(res => {
          app.globalData.use = app.globalData.use-1
          console.log(app.globalData.use)
          setTimeout(() => {
            wx.switchTab({
              url: '../index/index',
            })
          }, 500);
        })
      }
    })
  },

  // 复制外链
  copy(content){
    wx.setClipboardData({
      data: content,
      success:function(){
        wx.showToast({
          title: '复制成功',
        })
      }
    })
  },

    get_time(){
      var date = new Date();
      var y = date.getFullYear();
      var m = date.getMonth() + 1;
      m = m.toString().padStart(2, "0");
      var d = date.getDate();
      d = d.toString().padStart(2, "0");
      var hh = date.getHours();
      hh = hh.toString().padStart(2, "0");
      var mm = date.getMinutes();
      mm = mm.toString().padStart(2, "0");
      var ss = date.getSeconds();
      ss = ss.toString().padStart(2, "0");
      return `${y}-${m}-${d} ${hh}:${mm}:${ss}`;
    },

    // 上传图片
    upload_img(){
      let that = this
      wx.chooseImage({
        count: 1,
        sizeType: ['original', 'compressed'],
        sourceType: ['album', 'camera'],
        success (res) {
          // tempFilePath可以作为img标签的src属性显示图片
          wx.showLoading({
            title: '上传中',
          })
          const tempFilePaths = res.tempFilePaths
          let time = that.get_time()
          wx.cloud.uploadFile({
            cloudPath: 'person/'+time, // 上传至云端的路径
            filePath: tempFilePaths[0], // 小程序临时文件路径
            success: res => {
              that.get_url(res.fileID)
            },
            fail: console.error
          })
        }
      })
    },

    // 下载图片获取链接
    get_url(id){
      wx.cloud.downloadFile({
        fileID: id, // 文件 ID
        success: res => {
          wx.hideLoading()
          wx.showToast({
            title: '上传成功',
          })
          // 返回临时文件路径
          this.setData({
            url:res.tempFilePath
          })
        },
        fail: console.error
      })
    },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})